<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>
  <style>
    @keyframes loader {
      to {
        background-position: -800px 0;
      }
    }
    /*，steps() 会根据你指定的步进数量，把整个动画切分为多帧，而且整个动画会在帧与帧之间硬切，不会做任
何插值处理。通常，这种硬切效果是我们极力避免的，因此我们很少听到关
于steps() 的讨论*/
    
    .loader {
      width: 100px;
      height: 100px;
      text-indent: 999px;
      overflow: hidden;
      /* Hide text */
      background: url(http://dabblet.com/img/loader.png) 0 0;
      animation: loader 1s infinite steps(8);
    }
  </style>
  <div class="loader">Loading…</div>
</body>

</html>